мог Вы разъяснять немного больше, как это было для Вас, что необходимо было изменить. Возможно, Вы могли указать на меня в правильном направлении путем обеспечения некоторых ссылок на информацию, которую Вы использовали.
Мой первый источник были на самом деле инструменты
man
страницы. Просто тип$ man toolname
на командной строке (
$
вот часть подсказки, не вход).В зависимости от платформы, они довольно правильно написаны и могут также быть найдены в Интернете. В случае
make
, я на самом деле считал полное документация , который занял несколько часов. На самом деле я не думаю, что это необходимо или полезно в большинстве случаев, но у меня было несколько особых требований в моих первых присвоениях в соответствии с Linux, который потребовал сложного make-файла. После записи make-файла я дал его опытному коллеге, который сделал некоторые незначительные тонкие настройки и исправления. После этого я в значительной степени зналmake
.я использовал GVIM, потому что у меня были некоторые (но не очень) предшествующий опыт там, я не могу сказать ничего вообще о Emacs или альтернативах. Я нахожу, что это действительно помогает считать другие народы
.gvimrc
файл конфигурации. Многие люди помещают его на сеть. Вот мой .не пытаются освоить весь binutils сразу, существует слишком много функций. Но получите общий обзор, таким образом, Вы будете знать, где искать при необходимости в чем-то в будущем. Вы должны , однако, знайте все важные параметры для
g++
иld
(инструмент компоновщика GCC, это вызывается автоматически кроме тех случаев, когда явно предотвращенный).Также мне любопытно, у Вас есть завершение кода и подсветка синтаксиса, когда Вы кодируете?
Подсветка синтаксиса: да, и намного лучший, чем Visual Studio. Завершение кода: да - выход . Во-первых, я должен признать, что не использовал завершение кода C++ даже в Visual Studio, потому что (по сравнению с VB и C#) это не было достаточно хорошо. Я не использую его часто теперь, но тем не менее, GVIM имеет поддержка завершения собственного кода C++. Объединенный с библиотека ctags и плагин как [1 120] taglist это - почти IDE.
На самом деле, то, что запустило меня, было статья Armin Ronacher. Прежде, чем прочитать текст, посмотрите на снимки экрана в конце его!
необходимо ли скомпилировать сначала прежде, чем получить (синтаксис) ошибки?
Да. Но это - то же для Visual Studio, не он (я никогда не использовал Целый Помидор)? Конечно, подсветка синтаксиса покажет Вам несоответствующие скобки, но это обо всех.
и как Вы отлаживаете (снова думают точки останова и т.д.)?
я использую
gdb
, который является инструментом командной строки. Существует также графический frontend, названныйDDD
.gdb
современное средство отладки и может сделать все, что можно сделать в IDE. Единственная вещь, которая действительно раздражает меня, читает отслеживание стека, потому что строки не располагаются с отступом или форматируются так, действительно трудно просканировать информацию при использовании большого количества шаблонов (который я делаю). Но те также создают помехи отслеживанию стека в IDE.Как я сказал, у меня было 'удовольствие' установить мои первые шаги в блокноте окон использования языка программирования Java и компиляторе Java командной строки в средней школе, и это было.. wel кошмар! конечно, когда я мог сравнить его с другими курсами программирования, я имел тогда, где у нас был достойный IDE
, Вы не должны даже пытаться сравнить современного, полнофункционального редактора как Emacs или GVIM к Блокноту. Блокнот является украшенным
TextBox
управление, и это действительно имеет все значение. Кроме того, работа над командной строкой является совсем другим опытом в Linux и Windows. Windowscmd.exe
сильно наносят вред. PowerShell намного лучше.РЕДАКТИРОВАНИЕ/: Я должен упомянуть явно, что GVIM снабдил вкладками редактирование (как в просмотре с использованием вкладок, не вкладках по сравнению с пробелами)! Это взяло мне возрасты для нахождения их, хотя они не скрыты вообще. Просто тип
:tabe
вместо плоскости:e
при открытии файла или создании нового и GVIM создаст новую вкладку. Переключение между вкладками может быть сделано с помощью курсора или нескольких различных ярлыков (в зависимости от платформы). Ключgt
(тип g , тогда t в командном режиме) должен работать везде, и переходы к следующей вкладке или вкладке нет. n, если число было дано. Тип:help gt
для получения большего количества справки.
Он должен быть надежным для вызовов объектов из скриптов, если скрипт определяет это последовательно. Так должно быть и в случае с JScript / Javascript в MSHTML, но, к сожалению, документации по этому вопросу действительно скудно, у меня нет никаких убедительных доказательств.
По моему собственному опыту, функция Javascript передана в attachEvent ( ) всегда должен быть согласован - полученный объект, который является «функцией», может иметь только один вызываемый метод, который соответствует самому себе. Следовательно, метод по умолчанию - единственный, который вы можете найти, с DISPID 0. Функции Javascript обычно не имеют функций-членов, хотя я уверен, что есть способ сделать это возможным. Если бы у него были функции-члены, вы увидите их так же, как функции-члены для объектов. Функции-члены в JScript всегда будут согласованы с IDispatchEx в соответствии с правилами функций expando, поскольку любые функции, добавленные к объекту, считаются расширяемыми.
Метод или свойство по умолчанию, которые вызывает DISPID_VALUE
, должны быть согласованы для данного интерфейса. Этот метод / свойство должно быть указано как DISPID_VALUE
в определении интерфейса в IDL для библиотеки типов. Единственный способ его изменить - это если владелец интерфейса выпустит новую версию интерфейса, в которой изменится метод / свойство, используемое по умолчанию, но это нарушит фундаментальное правило интерфейсов COM.
Подводя итог прекрасным объяснениям, данным в ответах и комментариях bobince, Kieron, Alohci и других:
TBODY
в DOM добавляется анализатором HTML. Обратите внимание, что этот странный синтаксический анализ ограничен текстовыми / html-документами, а в XHTML DOM близко соответствует исходному XML.
таблицы
: (CAPTION ?, (COL * | COLGROUP *), THEAD ?, TFOOT ?, TBODY +)
- tr
s разрешены только в tbody
! В спецификации сказано, что начальный тег tbody
является необязательным, что должно означать, что если анализатор HTML обнаруживает tr
непосредственно внутри таблицы
, он вставляет tbody
начальный тег, опущенный автором. Купите копию Inside Ole (2-е изд.) И Inside Ole 2 (2-е изд.) За несколько долларов, которые можно потратить на Amazon. Это хороший справочник по этим малоизвестным заклинаниям OLE.
Купите копию Inside Ole (2-е изд.) И Inside Ole 2 (2-е изд.) За несколько долларов, которые можно потратить на Amazon. Это хороший справочник по этим малоизвестным заклинаниям OLE.
Как сказал Мекларян, DISPID_VALUE (0), кажется, работает довольно последовательно для JS-функций (таким образом, он отлично работает с пользовательским attachEvent). Я использую их таким образом уже около года, и это всегда срабатывало. Также я обнаружил, что с помощью элемента управления activeX, встроенного в тег , мне нужно реализовать IConnectionPointContainer и IConnectionPoint для главного (объектного) IDispatch-внедрения CComObject, но любые другие, которые я выставляю на javascript в качестве возвращаемых значений из методов или свойств (через Invoke), я должен реализовать attachEvent и detachEvent сам.
При использовании точек соединения, соответствующие объекты IDispatch будут ожидать, что события будут отправляться на тот же самый DISPID, к которому они прикреплены на вашем объекте IDispatch...
смотрите http://code.google.com/p/firebreath/source/browse/src/ActiveXPlugin/JSAPI_IDispatchEx.h для примера реализации точек соединения.
.