LINUX.ORG.RU

конструктор класса. параметры

 ,


0

1

здрасьте здрасьте люди добрые. помогите пожалуйста разобраться

c.cpp
class exmpl{
public:
int a;
exmpl(
};

int main(){

exmpl obj(&obj.a, 3); 

};
a.s
.section .text
.global _ZN5exmplc2epii

_ZN5exmplc2epii:

x0-cодержит адрес.
x1- по-моему разумению должен был содержать #3


скажите пожалуйста почему 3 будет передана в конструктор класса не через x1 регистр, а через x2?

А так вообще можно? Или просто пример неполный?

У меня ругается на отсутствие соответствующего конструктора. И, по-моему, правильно ругается.


construct.cpp:9:7: error: no matching constructor for initialization of 'exmpl'
exmpl obj(&obj.a, 3); 

hibou ★★★★★ ()

твой вопрос не найдет однозначного ответа — это определяет ABI — тоесть конвенция порядка переданных аргументов. И этот ABI может быть различным на разных платформах.

safocl ★★ ()