C++ 11: Да!
C++ 11 и вперед имеет эту ту же функцию (названный конструкторы делегирования ).
синтаксис немного отличается от C#:
class Foo {
public:
Foo(char x, int y) {}
Foo(int y) : Foo('a', y) {}
};
C++ 03: Никакой
, К сожалению, нет никакого способа сделать это в C++ 03, но существует два способа моделировать это:
можно объединиться два (или больше) конструкторы через параметры по умолчанию:
class Foo {
public:
Foo(char x, int y=0); // combines two constructors (char) and (char, int)
// ...
};
Использование init метод для совместного использования общего кода:
class Foo {
public:
Foo(char x);
Foo(char x, int y);
// ...
private:
void init(char x, int y);
};
Foo::Foo(char x)
{
init(x, int(x) + 7);
// ...
}
Foo::Foo(char x, int y)
{
init(x, y);
// ...
}
void Foo::init(char x, int y)
{
// ...
}
См. запись FAQ C++ для ссылки.
Вы так близки к тому, чтобы ответить на этот вопрос сами, что я несколько неохотно отвечаю на него для тебя. Однако следующий XPath должен предоставить то, что вы хотите (конечно, при условии, что источником является XHTML).
//img[@class='photo-large']/@src
Дополнительные советы см. В W3 Schools . У них есть отличные руководства по таким вещам, а также отличный справочник.
Using Hpricot this works:
doc.at('//img[@class="photo-large"]')['src']
In case you have more than one image, the following gives an array:
doc.search('//img[@class="photo-large"]').map do |e| e['src'] end
However, Nokogiri is many times faster and it “can be used as a drop in replacement” for Hpricot.
Here the version for Nokogiri, in which this XPath for selecting attributes works:
doc.at('//img[@class="photo-large"]/@src').to_s
or for many images:
doc.search('//img[@class="photo-large"]/@src').to_a