Почему имя столбца «источник» отображается серым цветом в редакторе SSMS & VS T -SQL?

У меня есть следующий простой tSQL для создания таблицы

CREATE TABLE NewsArticles
(id INT NOT NULL IDENTITY(1, 1) PRIMARY KEY,
lastCrawl DATETIME NULL,
snippet NVARCHAR(2083) NULL,
source NVARCHAR(2083) NULL,
title NVARCHAR(2083) NULL,
url NVARCHAR(2083) NULL)

Как в Visual Studio 2012, так и в SQL Server 2012 Management Studio «источник» отображается серым цветом, тогда как имена других столбцов отображаются зеленым в SSMS или черным в VS. Почему? Слово «источник» не является зарезервированным словом в списке зарезервированных ключевых слов SQL

enter image description here

-. 121 ---1354542-

Использование Auto и Lambda для обработки сигнала?Я написал эту программу с основной функцией, внутри которой я создаю два сокета, например :int sockfd1 = socket (AF _INET, SOCK _STREAM, 0 ); int sockfd2 = сокет (AF _INET, SOCK _STREAM, 0 );...

Я написал эту программу с основной функцией, внутри которой я создаю два сокета, например:

int sockfd1 = socket(AF_INET, SOCK_STREAM, 0);
int sockfd2 = socket(AF_INET, SOCK_STREAM, 0);

Теперь я делаю с ними кое-что, и когда пользователь нажимает Ctrl+C для завершения процесса, я хочу убедиться, что сокеты закрываются должным образом, поэтому я делаю следующее:

auto sigTermHandler = [&] (int param) { close(sockfd1); close(sockfd2); };
signal(SIGTERM, sigTermHandler);

Но это вызывает следующую ошибку компиляции при компиляции какg++ -std=gnu++0x .cpp:

error: cannot convert ‘main(int, char**)::’ to ‘__sighandler_t {aka void (*)(int)}’ for argument ‘2’ to ‘void (* signal(int, __sighandler_t))(int)’

Разве нельзя использовать лямбду таким образом для обработки сигналов? Пожалуйста, порекомендуйте.

P.S. Я знаю, что мог бы поместить это в деструктор, если бы я сделал правильный ООП, но мне любопытно посмотреть, работает ли это.

15
задан R. Martinho Fernandes 13 July 2012 в 11:07
поделиться